package hcs.model;

/**
 * Thrown if an invalid time is requested by the user.
 * <p>
 * For example, this exception is thrown if the user requests a StandardHeatingTime which is less than 5 minutes
 * longer than the StandardInsideTime. {@See Heating control system requirements}. 
 */
public class InvalidTimeException extends Exception {

	private int requestedTime;
	private int standardInsideTime;
	
	private static final long serialVersionUID = 5766796071969212045L;

	public InvalidTimeException() {
	}

	public InvalidTimeException(String message) {
		super(message);
	}

	public InvalidTimeException(Throwable cause) {
		super(cause);
	}

	public InvalidTimeException(String message, Throwable cause) {
		super(message, cause);
	}

	public InvalidTimeException(int t, int standardInsideTime) {
		this.requestedTime = t;
		this.standardInsideTime = standardInsideTime;
	}

	/**
	 * Gets the user requested time.
	 * @return the user requested time.
	 */
	public int getRequestedTime() {
		return requestedTime;
	}

	/**
	 * Gets the current standard inside time.
	 * @return the current standard inside time.
	 */
	public int getStandardInsideTime() {
		return standardInsideTime;
	}

}
